/*
    XTU OJ: 1354
    by: fifth_light
*/

#include <stdio.h>
#include <stdint.h>
#include <inttypes.h>

#define mod 1000000007
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define MOD(a) ((a) %= mod)

#define arr(a, b) (array[a + 1][b + 1])

int64_t array[110][110] = {0};

void prepare_table() {
    array[1][1] = 1;
    for (int i = 1; i <= 105; i++) {
        // 横行
        for (int ix = 0; ix < i; ix++) {
            arr(ix, i) += arr(ix - 1, i);
            arr(ix, i) += arr(ix - 1, i - 1);
            arr(ix, i) += arr(ix, i - 1);
            MOD(arr(ix, i));
        }
        // 竖行 
        for (int iy = 0; iy < i; iy++) {
            arr(i, iy) += arr(i, iy - 1);
            arr(i, iy) += arr(i - 1, iy - 1);
            arr(i, iy) += arr(i - 1, iy);
            MOD(arr(i, iy));
        }
        // 右上
        if (i <= 105 && i <= 105) {
            arr(i, i) += arr(i - 1, i - 1);
            arr(i, i) += arr(i - 1, i);
            arr(i, i) += arr(i, i - 1);
            MOD(arr(i, i));
        }
    }
}

int main(void) {
    prepare_table();
    int t;
    scanf("%d", &t);
    for (int i = 0; i < t; i++) {
        int x, y;
        scanf("%d%d", &x, &y);
        printf("%" PRId64 "\n", arr(x, y));
    }
    return 0;
}
